package collection;

import java.util.*;

/**
 * List集合
 * List是Collection下面常见的一类集合
 * java.util.List接口是所有List的接口，它继承自Collection。
 * 常见的实现类：
 * java.util.ArrayList:内部由数组实现，查询性能更好。
 * java.util.LinkedList:内部由链表实现，增删性能更好。
 */
public class ListDemo {
    public static void main(String[] args) {
        List<String >list = new ArrayList<>();
//        List<String >list = new LinkedList<>();

        list.add("one");
        list.add("two");
        list.add("three");
        list.add("four");
        list.add("five");

        String e = list.get(2);
        System.out.println(e);

        for (int i = 0;i<list.size();i++){
            e=list.get(i);
            System.out.println(e);

        }
        /*
                E set(int index,E e)
                将给定元素设置到指定位置，返回值为该位置原有的元素。
                替换元素操作
             */
//        String old = list.set(1,"six");
//        System.out.println(list);
//        System.out.println("被替换的元素是："+old);

        //在不创建新集合的前提下，将list集合元素反转
        //five ,four , three ,six , one
        for (int i = 0;i<list.size()/2;i++){
            e = list.get(list.size()-1-i);
            e = list.set(i,e);
            list.set(list.size()-1-i,e);
        }
        Collections.reverse(list);
        System.out.println(list);




    }
}
